热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

都会|校本_Go语言实战第一课

篇首语:本文由编程笔记#小编为大家整理,主要介绍了Go语言实战第一课相关的知识,希望对你有一定的参考价值。Go语言特点1.静态类型,编译型的开

篇首语:本文由编程笔记#小编为大家整理,主要介绍了Go语言实战第一课相关的知识,希望对你有一定的参考价值。


Go语言特点

1.静态类型,编译型的开源语言
变量类型直接写出来,不直接写出来,让程序自己去识别。
1.静态类型,编译型的开源语言
2.校本化的语法,支持多种编程范式
函数式&面向对象

3.原生,给力的支持并发编程 降低开发,维护成本,程序可以更好的执行

Go语言缺点

1.语法糖没有python和ruby那么多

每一个工作区的结构都类似下图所示



2.目前的程序运行速度不及C 赶超C++和Java

3.第三方函数库暂时不像绝对主流的编程语言那么多

go语言基本规则

工作区和goPath
工作区是放置GO源码文件的目录 一般情况下,GO源码文件都需要存放到工作区
中但是对于命令源码文件来说,这不是必须得。


src目录

用于存放源码文件,以代码包为组织形式

pkg目录
用于存放归档文件(名称以.a为后缀的文件)所有归档文件都会被存放到该目录下的
平台相关目录中,同样以代码包为组织形式
工作区和GoPATH
平台相关目录

两个隐含的GO语言环境变量:GOOS和GOARCH

bin下
命令源码文件是GO程序的入口,但不建议把程序都写在一个文件中
注意:同一个代码包中强烈不建议直接包含多个源代码文件

源码文件的分类和含义
go源码文件
名称以.go为后缀,内容以Go语言代码组织的文件
多个GO源码文件是需要用代码包组织起来的。
源码文件的分类和含义
分三类
命令源码文件,
声明自己属于main代码包,包含无参数声明和结果声明的main函数
被安装后,相应的可执行文件会被保存到GOBIN指向的目录或《当前工作区目录》
bin下
命令源码文件是GO程序的入口,但不建议把程序都写在一个文件中
注意:同一个代码包中强烈不建议直接包含多个源代码文件
库源码文件,
测试源码文件
不具备命令源码文件的两个特征的源码文件名称以_test.go为后缀
其中至少有一个函数的名称以Test或者Benchmark为前缀。
并且,该函数接受一个类型为*testing.T 或者*testing.B的参数。
func TestFind(t*testing.T)
//省略若干条语句

func BenchmarkFind(b*testing.B)
//省略若干条语句



推荐阅读
  • 开发笔记:Python之路第一篇:初识Python
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Python之路第一篇:初识Python相关的知识,希望对你有一定的参考价值。Python简介& ... [详细]
  • 深入理解Java虚拟机的并发编程与性能优化
    本文主要介绍了Java内存模型与线程的相关概念,探讨了并发编程在服务端应用中的重要性。同时,介绍了Java语言和虚拟机提供的工具,帮助开发人员处理并发方面的问题,提高程序的并发能力和性能优化。文章指出,充分利用计算机处理器的能力和协调线程之间的并发操作是提高服务端程序性能的关键。 ... [详细]
  • 2018年人工智能大数据的爆发,学Java还是Python?
    本文介绍了2018年人工智能大数据的爆发以及学习Java和Python的相关知识。在人工智能和大数据时代,Java和Python这两门编程语言都很优秀且火爆。选择学习哪门语言要根据个人兴趣爱好来决定。Python是一门拥有简洁语法的高级编程语言,容易上手。其特色之一是强制使用空白符作为语句缩进,使得新手可以快速上手。目前,Python在人工智能领域有着广泛的应用。如果对Java、Python或大数据感兴趣,欢迎加入qq群458345782。 ... [详细]
  • Android中高级面试必知必会,积累总结
    本文介绍了Android中高级面试的必知必会内容,并总结了相关经验。文章指出,如今的Android市场对开发人员的要求更高,需要更专业的人才。同时,文章还给出了针对Android岗位的职责和要求,并提供了简历突出的建议。 ... [详细]
  • Android Studio Bumblebee | 2021.1.1(大黄蜂版本使用介绍)
    本文介绍了Android Studio Bumblebee | 2021.1.1(大黄蜂版本)的使用方法和相关知识,包括Gradle的介绍、设备管理器的配置、无线调试、新版本问题等内容。同时还提供了更新版本的下载地址和启动页面截图。 ... [详细]
  • 本文介绍了Hyperledger Fabric外部链码构建与运行的相关知识,包括在Hyperledger Fabric 2.0版本之前链码构建和运行的困难性,外部构建模式的实现原理以及外部构建和运行API的使用方法。通过本文的介绍,读者可以了解到如何利用外部构建和运行的方式来实现链码的构建和运行,并且不再受限于特定的语言和部署环境。 ... [详细]
  • 本文介绍了操作系统的定义和功能,包括操作系统的本质、用户界面以及系统调用的分类。同时还介绍了进程和线程的区别,包括进程和线程的定义和作用。 ... [详细]
  • java drools5_Java Drools5.1 规则流基础【示例】(中)
    五、规则文件及规则流EduInfoRule.drl:packagemyrules;importsample.Employ;ruleBachelorruleflow-group ... [详细]
  • ShiftLeft:将静态防护与运行时防护结合的持续性安全防护解决方案
    ShiftLeft公司是一家致力于将应用的静态防护和运行时防护与应用开发自动化工作流相结合以提升软件开发生命周期中的安全性的公司。传统的安全防护方式存在误报率高、人工成本高、耗时长等问题,而ShiftLeft提供的持续性安全防护解决方案能够解决这些问题。通过将下一代静态代码分析与应用开发自动化工作流中涉及的安全工具相结合,ShiftLeft帮助企业实现DevSecOps的安全部分,提供高效、准确的安全能力。 ... [详细]
  • linux进阶50——无锁CAS
    1.概念比较并交换(compareandswap,CAS),是原⼦操作的⼀种,可⽤于在多线程编程中实现不被打断的数据交换操作࿰ ... [详细]
  • 1、概述首先和大家一起回顾一下Java消息服务,在我之前的博客《Java消息队列-JMS概述》中,我为大家分析了:然后在另一篇博客《Java消息队列-ActiveMq实战》中 ... [详细]
  • AndroidJetpackNavigation基本使用本篇主要介绍一下AndroidJetpack组件Navigation导航组件的基本使用当看到Navigation单词的时候应 ... [详细]
  • 本文介绍了RPC框架Thrift的安装环境变量配置与第一个实例,讲解了RPC的概念以及如何解决跨语言、c++客户端、web服务端、远程调用等需求。Thrift开发方便上手快,性能和稳定性也不错,适合初学者学习和使用。 ... [详细]
  • 关于CMS收集器的知识介绍和优缺点分析
    本文介绍了CMS收集器的概念、运行过程和优缺点,并解释了垃圾回收器的作用和实践。CMS收集器是一种基于标记-清除算法的垃圾回收器,适用于互联网站和B/S系统等对响应速度和停顿时间有较高要求的应用。同时,还提供了其他垃圾回收器的参考资料。 ... [详细]
  • MySQL数据库锁机制及其应用(数据库锁的概念)
    本文介绍了MySQL数据库锁机制及其应用。数据库锁是计算机协调多个进程或线程并发访问某一资源的机制,在数据库中,数据是一种供许多用户共享的资源,如何保证数据并发访问的一致性和有效性是数据库必须解决的问题。MySQL的锁机制相对简单,不同的存储引擎支持不同的锁机制,主要包括表级锁、行级锁和页面锁。本文详细介绍了MySQL表级锁的锁模式和特点,以及行级锁和页面锁的特点和应用场景。同时还讨论了锁冲突对数据库并发访问性能的影响。 ... [详细]
author-avatar
白小蛮
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有